package ace.module.mail.address.core.impl.service.member;

import ace.cmp.core.model.PageResultDto;
import ace.module.common.api.model.input.TenantInput;
import ace.module.common.api.model.input.TenantPageInput;
import ace.module.mail.address.api.model.dto.MadMailAddressDto;
import ace.module.mail.address.api.model.input.mailaddress.MadMailAddressAddItemInput;
import ace.module.mail.address.api.model.input.mailaddress.MadMailAddressAdminFilterInput;
import ace.module.mail.address.api.model.input.mailaddress.MadMailAddressModifyItemInput;
import java.util.List;

/**
 * 会员服务.
 *
 * @author Caspar
 */
public interface MadMemberMailAddressService {

  PageResultDto<MadMailAddressDto> adminSearch(
      TenantPageInput<MadMailAddressAdminFilterInput> tenantPageInput);

  Long add(TenantInput<MadMailAddressAddItemInput> input);

  void modify(TenantInput<MadMailAddressModifyItemInput> input);

  void remove(List<Long> ids);

  MadMailAddressDto get(TenantInput<Long> input);
}
